package com.vca.common.response;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author Li
 * @description 礼品卡分页响应类
 * @date 2023-08-29 13:54
 */

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="CardPageResponse对象", description="礼品卡分页响应类")
public class CardPageResponse {

    @ApiModelProperty(value = "主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "卡号")
    private String cardNo;

    @ApiModelProperty(value = "使用礼品卡订单")
    private String orderId;

    @ApiModelProperty(value = "订单类型:0-课程订单 1=套课订单 2=讲座订单 3=展览订单 4=商品订单")
    private Integer orderType;

    @ApiModelProperty(value = "实际支付金额")
    private BigDecimal payPrice;

    @ApiModelProperty(value = "订单创建时间")
    private Date orderTime;

    @ApiModelProperty(value = "面值")
    private BigDecimal faceValue;

    @ApiModelProperty(value = "状态 0=未使用 1=已使用 2=已失效")
    private Integer status;

    @ApiModelProperty(value = "名称")
    private String name;

    @ApiModelProperty(value = "使用范围 0=课程 1=讲座 2=展览")
    private Integer userAround;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "过期时间")
    private Date endTime;

    @ApiModelProperty(value = "赠送状态 true:已赠送，false:未赠送")
    private Boolean giftStatus;

    @ApiModelProperty(value = "赠送时间")
    private Date giftTime;

    @ApiModelProperty(value = "被赠送人")
    private String recipient;

    @ApiModelProperty(value = "序列号(兑换码)")
    private String cdKey;

    @ApiModelProperty(value = "用户手机号")
    private String phone;

    @ApiModelProperty(value = "排期日期")
    private String schedulingDate;

    @ApiModelProperty(value = "排期当天开始时间")
    private String schedulingStartTime;

    @ApiModelProperty(value = "商品名称")
    private String orderName;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "退款状态  0 未退款 1 申请中 2 已退款 3 退款中  4 待退货 5 退货中  6退款取消")
    private Integer refundStatus;
}
